Collecting Potential Optimisations
نویسندگان
چکیده
In this paper we describe an analysis system for logic programs which makes it possible to collect call-pattern dependent information about possible optimisations of individual atoms. The result of such an analysis is a collection of tables, one per predicate. Each table contains the specification of call patterns. For each specification, a list of program points is kept. These program points are the program points that can potentially be optimised when the predicate is called with a matching call pattern. Such a table does not only give a view on the potential of optimisation in a program, but as it relates the optimisations with call patterns, it also gives the circumstances in which an optimisation can occur. This information can be valuable input during the development of better version generation heuristics, or can simply be given as feedback to the programmer. The system is introduced using a simple optimisation example, then schematically generalised to abstract domains endowed with a generalised pseudo-complement operator. This abstract represents work in progress.
منابع مشابه
On the Algebraic Derivation of Garbage Collectors
We give an algebraic characterisation of reachability and non-reachability in modal Kleene algebras. By this we derive a general algorithm for garbage collectors and present some further algebraic optimisations. The given approach is fully expressible in first-order logic and hence provides an abstract and general framework for automated and machine-verified derivations of garbage collecting al...
متن کاملShallow vs. Deep Techniques for Handling Linguistic Constraints and Optimisations
An important aspect of many nlg systems is ensuring that all generated texts obey linguistic constraints and are (near-)optimal under linguistic quality measures. Where they are possible, deep techniques can automate the enforcement of linguistic constraints and optimisations. In contrast, shallow techniques require developers to explicitly enforce constraints and optimisations. Deep techniques...
متن کاملFrom LCA to PSS – Making leaps towards sustainability by applying product/service-system thinking in product development
Life Cycle Assessment (LCA) is the standardised and globally recognised tool for quantifying environmental impact of goods and services. A key aspect in LCA is the consideration of whole life cycle systems. The application of LCA in product development inherently comprises the quest for optimisations on all system levels. However, as the act of ecodesign conventionally focuses on physical produ...
متن کاملWhat's New in DLP
DLP has undergone a number of modiications in the last year. Most of the modiications are further optimisations, but DLP now has an option to compute and return the full model it generates for satissable formulae. The new optimisations include some low-level optimisations, more cached information to help in backjumping, early investigation of modal successors , and a form of dynamic backtrackin...
متن کاملRecent Filesystem Optimisations in FreeBSD
In this paper we summarise four recent optimisations to the FFS implementation in FreeBSD: soft updates, dirpref, vmiodir and dirhash. We then give a detailed exposition of dirhash’s implementation. Finally we study these optimisations under a variety of benchmarks and look at their interactions. Under micro-benchmarks, combinations of these optimisations can offer improvements of over two orde...
متن کامل